Skip to content

開発モード実装: Slack認証をバイパスする開発者向け機能を追加#87

Open
Copilot wants to merge 3 commits intomainfrom
copilot/fix-86
Open

開発モード実装: Slack認証をバイパスする開発者向け機能を追加#87
Copilot wants to merge 3 commits intomainfrom
copilot/fix-86

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Jul 24, 2025

Slack認証が不要な開発モードを実装しました。これにより、開発者はSlackアプリの認証情報なしでUIや機能をテストできるようになります。

🚀 主な機能

開発モードの有効化

# .envファイルで開発モードを有効化
VITE_DEV_MODE=true

モック認証データ

  • 自動的にモックユーザープロファイル(表示名: "開発者")を提供
  • モックアクセストークンで認証状態をシミュレート
  • Slack認証フローを完全にバイパス

API呼び出しのシミュレーション

  • メッセージ送信をコンソールログで確認
  • ステータス絵文字更新をシミュレート
  • 青色の通知で「(開発モード)」表示

🛠️ 技術的な変更

環境設定の改善

  • VITE_DEV_MODE 環境変数を追加
  • 開発モード時はSlack認証情報が不要
  • .env.sample に詳細な設定説明を追加

AuthContext の拡張

  • React Hooksの呼び出し順序に配慮した実装
  • 開発モード時は認証処理をスキップ
  • 本番環境の認証フローは変更なし

リポジトリ層の対応

  • postMessages 関数で開発モード分岐
  • updateEmoji 関数で開発モード分岐
  • getConversations 関数でモックデータ返却

✅ 動作確認済み

  • ✅ 開発モードでの認証バイパス
  • ✅ 出勤・退勤機能のシミュレーション
  • ✅ ステータス絵文字変更のシミュレーション
  • ✅ 本番モードでの既存機能維持
  • ✅ ビルドとリントの成功

📱 スクリーンショット

開発モード動作画面

開発モードが有効な状態で、認証なしで全ての機能にアクセスできることを確認できます。

🎯 開発者への利点

  • Slackアプリの認証設定が不要
  • ローカル開発環境でのテストが簡単
  • UI/UX の改善作業に集中可能
  • 本番環境への影響ゼロ

Fixes #86.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Co-authored-by: nemuki <43571743+nemuki@users.noreply.github.com>
Copilot AI changed the title [WIP] 開発モードを作りたい 開発モード実装: Slack認証をバイパスする開発者向け機能を追加 Jul 24, 2025
Copilot AI requested a review from nemuki July 24, 2025 07:57
@nemuki nemuki marked this pull request as ready for review March 13, 2026 15:06
Copilot AI review requested due to automatic review settings March 13, 2026 15:06
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Slack OAuth 認証なしで UI/機能確認ができる「開発モード(VITE_DEV_MODE)」を追加し、ローカル開発時のセットアップ負荷を下げる変更です。

Changes:

  • VITE_DEV_MODE を追加し、開発モード時は Slack 認証情報(Client ID/Secret/Redirect URI)を必須にしないように変更
  • 開発モード時に AuthContext がモック認証状態(ユーザープロファイル/トークン)を提供して認証フローをバイパス
  • Slack リポジトリ層で API 呼び出しをシミュレーション(モック会話データ返却、通知/ログ出力)

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
src/utils/env.ts 開発モード判定と、Slack 関連 env の必須/任意切り替えを追加
src/infra/repository/slack.ts 開発モード時のモックデータ返却と API 呼び出しシミュレーションを追加
src/context/AuthContext.tsx 開発モード時の認証バイパス(モック認証コンテキスト)を追加
.env.sample VITE_DEV_MODE 設定例と説明を追記

return value.toLowerCase() === 'true'
}

const isDevMode = getBooleanEnvValue('VITE_DEV_MODE')
Comment on lines +139 to +143
handleLogout: () => {
console.log('開発モード: ログアウト処理は実行されません')
},
handleRemoveLocalStorageSlackOauthToken: () => {
console.log('開発モード: LocalStorage の削除は実行されません')
useEffect(() => {
// 開発モードの場合は処理をスキップ
if (env.DEV_MODE) {
setAuthIsLoading(false)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

開発モードを作りたい

3 participants